// house_pkg/pages/locate/index.ts
import qqMap from '../../../utils/qqmap'
Page({
  data: {
    // 当前默认地址或选择的地址附近的社区
    points: []
  },
  onLoad() {
    this.getLocation()
  },
  async getLocation() {
    // 获取用户当前所在位置的经纬度，后续要根据经纬度拿到用户的地址并渲染
    const {
      latitude,
      longitude
    } = await wx.getLocation()
    // 逆地址解析：把经纬度转成地址
    this.getPoint(latitude, longitude)
  },
  async chooseLocation() {
    // 获取指定位置的经纬度
    const {
      latitude,
      longitude
    } = await wx.chooseLocation()
    this.getPoint(latitude, longitude)
  },
  getPoint(latitude, longitude) {
    wx.showLoading({
      title: '搜索中',
    })
    // 逆解析
    qqMap.reverseGeocoder({
      location: [latitude, longitude].join(','),
      success: (res) => {
        this.setData({
          address: res.result.address
        })
      }
    })
    // 搜索附近社区
    qqMap.search({
      keyword: '住宅小区',
      page_size: 5,
      location: [latitude, longitude].join(','),
      success: (res) => {
        const points = []
        res.data.forEach(({
          title,
          id,
          _distance
        }) => {
          points.push({
            title,
            id,
            _distance
          })
        })
        this.setData({
          points
        })
      },
      fail: function (res) {
        wx.utils.toast('搜索社区失败')
      },
      complete: function () {
        wx.hideLoading()
      }
    })

  },
  goBuilding(e) {
    wx.navigateTo({
      url: '/house_pkg/pages/building/index?point=' + e.mark.point,
    })
  }
})